﻿using Styx.TreeSharp;


namespace TuanHA_Monk_Special_Edition_Extreme_PvP
{
    public partial class Classname
    {
        #region MistWeaver Rotation

        private Composite MistWeaverRotation()
        {
            return new PrioritySelector(
                MovementMoveToLoS(ret => UnitHeal),
                MovementMoveStop(ret => UnitHeal, 10),
                //Heal Rotation Here
                SpearHandStrike(),
                SpearHandStrikePlayerLowHP(),
                SetAutoAttack(),
                FortifyingBrew(),
                DampenHarm(),
                ChiBrew(),
                TouchofDeathPvP(),
                //TouchofDeath(),
                new Decorator(
                    ret =>
                    UnitHeal != null &&
                    UnitHeal.IsValid &&
                    UnitHeal.HealthPercent <=
                    THSettings.Instance.UrgentHeal,
                    new PrioritySelector(
                        Revival(),
                        LifeCocoon(),
                        SurgingMistVistaMist(),
                        ZenMeditation(),
                        LegSweepMeLowHP(),
                        ChargingOxWaveMeLowHP(),
                        ParalysisMeLowHP(),
                        QuakingPalmMeLowHP(),
                        GrappleWeapon(),
                        ExpelHarm(),
                        SurgingMist(),
                        EnvelopingMist(),
                        Transcendence(),
                        DetoxFriendlyASAPComp(),
                        RenewingMist(),
                        DetoxMe(),
                        Uplift(),
                        ChiWave(),
                        ZenSphere(),
                        ZenSphereDetonate(),
                        ChiBurst(),
                        DiffuseMagic(),
                        LegSweepEnemyLowHP(),
                        ChargingOxWaveEnemyLowHP(),
                        CracklingJadeLightningPushBack(),
                        ManaTea(),
                        HealingSphereMist(),
                        HealingSphereMistTank(),
                        SoothingMist()
                        )),
                new Decorator(
                    ret =>
                    UnitHeal != null &&
                    UnitHeal.IsValid &&
                    UnitHeal.HealthPercent > THSettings.Instance.UrgentHeal
                    && UnitHeal.HealthPercent <= THSettings.Instance.PriorityHeal,
                    new PrioritySelector(
                        ChiTorpedoMist(),
                        Revival(),
                        LifeCocoon(),
                        SurgingMistVistaMist(),
                        ZenMeditation(),
                        LegSweepMeLowHP(),
                        ChargingOxWaveMeLowHP(),
                        ParalysisMeLowHP(),
                        GrappleWeapon(),
                        ExpelHarm(),
                        SurgingMist(),
                        EnvelopingMist(),
                        Transcendence(),
                        DetoxFriendlyASAPComp(),
                        RenewingMist(),
                        DetoxMe(),
                        TigersLustMe(),
                        TigersLustFriend(),
                        Disable(),
                        BlackoutKickMistHightPriority(),
                        Uplift(),
                        ChiWave(),
                        ZenSphere(),
                        ZenSphereDetonate(),
                        ChiBurst(),
                        TouchofDeath(),
                        LegSweepInterrupt(),
                        ChargingOxWaveInterrupt(),
                        ParalysisInterrupt(),
                        DiffuseMagic(),
                        LegSweepEnemyLowHP(),
                        ChargingOxWaveEnemyLowHP(),
                        CracklingJadeLightningPushBack(),
                        ManaTea(),
                        SummonJadeSerpentStatue(),
                        RushingJadeWindMist(),
                        SpinningCraneKickMist(),
                        TigerPalmMistTigerPower(),
                        BlackoutKickMist(),
                        PickHealingSphere(),
                        PickChiSphere(),
                        DetoxFriendlyComp(),
                        TigerPalmVitalMists(),
                        HealingSphereMist(),
                        HealingSphereMistTank(),
                        SoothingMist(),
                        JabMist(),
                        LegacyoftheEmperorGroupBuff(),
                        PathofBlossomsMist()
                        )),
                new Decorator(
                    ret =>
                    (UnitHeal == null ||
                     UnitHeal != null && UnitHeal.IsValid &&
                     UnitHeal.HealthPercent > THSettings.Instance.PriorityHeal),
                    new PrioritySelector(
                        //HealingSphereTest(),
                        ChiTorpedoMist(),
                        Revival(),
                        LifeCocoon(),
                        SurgingMistVistaMist(),
                        ZenMeditation(),
                        LegSweepMeLowHP(),
                        ChargingOxWaveMeLowHP(),
                        ParalysisMeLowHP(),
                        GrappleWeapon(),
                        ExpelHarm(),
                        SurgingMist(),
                        EnvelopingMist(),
                        Transcendence(),
                        DetoxFriendlyASAPComp(),
                        RenewingMist(),
                        DetoxMe(),
                        TigersLustMe(),
                        TigersLustFriend(),
                        Disable(),
                        BlackoutKickMistHightPriority(),
                        Uplift(),
                        ChiWave(),
                        ZenSphere(),
                        ZenSphereDetonate(),
                        ChiBurst(),
                        TouchofDeath(),
                        LegSweepInterrupt(),
                        ChargingOxWaveInterrupt(),
                        ParalysisInterrupt(),
                        DiffuseMagic(),
                        LegSweepEnemyLowHP(),
                        ChargingOxWaveEnemyLowHP(),
                        CracklingJadeLightningPushBack(),
                        ManaTea(),
                        SummonJadeSerpentStatue(),
                        RushingJadeWindMist(),
                        SpinningCraneKickMist(),
                        TigerPalmMistTigerPower(),
                        BlackoutKickMist(),
                        PickHealingSphere(),
                        PickChiSphere(),
                        HealingSphereMist(),
                        HealingSphereMistTank(),
                        SoothingMist(),
                        DetoxFriendlyComp(),
                        TigerPalmVitalMists(),
                        HealingSphereMist(),
                        HealingSphereMistTank(),
                        JabMist(),
                        CracklingJadeLightningMist(),
                        LegacyoftheEmperorGroupBuff(),
                        PathofBlossomsMist()
                        ))
                );
        }

        #endregion
    }
}